package com.kurtphpr.sistema.pagamento;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;

import com.kurtphpr.sistema.cliente.Cliente;
import com.kurtphpr.sistema.produto.Produto;

public class PagamentoDAOHibernate implements PagamentoDAO{

	private Session sessao;
	
	
	public Session getSessao() {
		return sessao;
	}


	public void setSessao(Session sessao) {
		this.sessao = sessao;
	}

	@Override
	public void salvar(Pagamento pagamento) {		
		this.sessao.save(pagamento);
	}

	@Override
	public List<Pagamento> listar() {
		Criteria lista = sessao.createCriteria(Pagamento.class);
		return lista.list();
	}


	@Override
	public List<Pagamento> pesquisarPorcliente(Cliente cliente) {
		String sql = "from Pagamento p where p.cliente =:cliente";
		Query consulta = this.sessao.createQuery(sql);
		consulta.setLong("cliente", cliente.getId());
		return (List<Pagamento>) consulta.list();
	}

}
